main(List<String> args) {
  test3();
}

void test() {
  const a = 0;
  // var b ??= a; // 编译错误，
  var b;
  b ??= a;
  print(b); // 输出0
}

void test1() {
  const a = 0;
  var b = 1;
  b ??= a;
  print(b); // 输出1
}

void test2() {
  var a;
  var b = 1;
  b ??= a;
  print(b); // 1
}

void test3() {
  var a = 1;
  var b;
  var c = a ?? b; // 1
}

// 类的可选值的使用
class Person {
  final String name;
  final String sex;
  Person({this.name,this.sex});
  int age;
}

void test4(){
  var p = Person(name: "Huang",sex: "m");
  p?.age = 10;  // 类的可选值的使用方式
}

